﻿using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;

/// <summary>
/// Clase BuscarFactura.aspx.cs contiene las operaciones necesarias para
/// poder buscar una factura registrada dentro del sistema. 
///
/// Autor: Equipo # 2
/// </summary>
    public partial class MasterPage2 : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {

        }
       /* private string m_Titulo;
        public string Titulo
        {
            get
            {
                return m_Titulo;
            }
            set
            {
                m_Titulo = value;
                this.H1Titulo.InnerText = value;
            }
        }*/
        /// <summary>
        /// Nombre del metodo: ConsultarFactura
        /// este metodo se escarga de validar los datos ingresados en el textbox que 
        /// aparece en la ventana, si no consigue nada, muestra un mensaje diciendo 
        /// que no hay datos, en caso contrario despliega el grid view con la informacion 
        /// que consiga la busqueda 
        /// </summary>
        /// 
        /// </param>los parametros recibidos son propios del C# 
        /// object sender, EventArgs e
        public void ConsultarFactura(object sender, EventArgs e)
        {
            FacturaControl control = new FacturaControl();
            IList facturas = control.Buscar(txtBusquedaFactura.Text);
            if (facturas.Count == 0)
            {
                this.gvwBuscarFactura.Columns.Clear();
                this.gvwBuscarFactura.EmptyDataText = "No se ha encontrado una factura relacionada con el dato ingresado";
                this.gvwBuscarFactura.Caption = "Listado de Facturas";
                this.gvwBuscarFactura.DataSource = facturas;
                this.gvwBuscarFactura.DataBind();
            }
            else 
            {
                this.gvwBuscarFactura.Columns.Clear();
                BoundField id = new BoundField();
                BoundField numero = new BoundField();
                BoundField fecha = new BoundField();
                BoundField titulo = new BoundField();
                BoundField monto = new BoundField();
                BoundField estado = new BoundField();
                BoundField porcentaje = new BoundField();
                porcentaje.DataField = "Porcentaje";
                porcentaje.HeaderText = "PORCENTAJE";
                id.DataField = "Id";
                id.HeaderText = "ID";
                numero.DataField = "Numero";  // del Origen de datos
                numero.HeaderText = "NUMERO"; // Nombre de la Columna
                fecha.DataField = "Fecha";  
                fecha.HeaderText = "FECHA";
                titulo.DataField = "Titulo"; 
                titulo.HeaderText = "TITULO";
                titulo.FooterText = "TOTAL DE FACTURAS: ";
                titulo.FooterStyle.HorizontalAlign = HorizontalAlign.Right;
                monto.DataField = "Monto";
                monto.HeaderText = "MONTO";
                monto.FooterText = Convert.ToString(facturas.Count);
                monto.FooterStyle.HorizontalAlign = HorizontalAlign.Left;
                estado.DataField = "Estado";
                estado.HeaderText = "ESTADO";
                this.gvwBuscarFactura.Columns.Add(numero);
                this.gvwBuscarFactura.Columns.Add(fecha);
                this.gvwBuscarFactura.Columns.Add(titulo);
                this.gvwBuscarFactura.Columns.Add(monto);
                this.gvwBuscarFactura.Columns.Add(estado);
                this.gvwBuscarFactura.Columns.Add(id);
                this.gvwBuscarFactura.Columns.Add(porcentaje);
                this.gvwBuscarFactura.Caption = "Listado de Facturas"; 
                this.gvwBuscarFactura.DataSource = facturas;
                this.gvwBuscarFactura.DataBind();
                this.btnEstadoFactura.Enabled = true;
                this.btnModificarFactura.Enabled = true;
                this.btnConsultarFactura.Enabled = true;
                id.Visible = false;
              }
        }
        protected void ModificarFactura(object sender, EventArgs e)
            {

                //this.gvwBuscarFactura.SelectedIndexChanged();
               // Array prueba = this.gvwBuscarFactura.Rows(this.gvwBuscarFactura.SelectedIndexChanged);
                    String idfactura = this.gvwBuscarFactura.SelectedRow.Cells[6].Text;
                    /*System.Int32 numerofactura = this.gvwBuscarFactura.SelectedRow.Cells[1].Text;
                    DateTime fechafactura = this.gvwBuscarFactura.SelectedRow.Cells[2].Text;
                    String titulofactura = this.gvwBuscarFactura.SelectedRow.Cells[3].Text;
                    Double montofactura = this.gvwBuscarFactura.SelectedRow.Cells[4].Text;
                    String estadofactura = this.gvwBuscarFactura.SelectedRow.Cells[5].Text;
                    System.Int32 idfactura = this.gvwBuscarFactura.SelectedRow.Cells[6].Text;
                    Double porcentajefactura = this.gvwBuscarFactura.SelectedRow.Cells[7].Text;*/
                    Response.Redirect("~/Vista/ModificarFactura.aspx?" + "idfactura=" + idfactura);
        }

        public String getIdFactura
        {
            get
            {
                return this.gvwBuscarFactura.SelectedRow.Cells[6].Text;
            }
        }

        protected void btnConsultarFactura_Click(object sender, EventArgs e)
        {

        }

        protected void CambiarEstadoFactura(object sender, EventArgs e)
        {
            System.Int32 id = System.Int32.Parse(this.gvwBuscarFactura.SelectedRow.Cells[6].Text);
            FacturaControl control = new FacturaControl();
            control.CambiarEstatusFactura(id);
        }
}


